home *** CD-ROM | disk | FTP | other *** search
/ Amiga Collections: MegaDisc / MegaDisc 28 (1992-05)(MegaDisc Digital Publishing)(AU)(Disk 2 of 2).zip / MegaDisc 28 (1992-05)(MegaDisc Digital Publishing)(AU)(Disk 2 of 2).adf / Programming / BASIC_TUTORIAL_9 / ScrollFont.bas < prev    next >
BASIC Source File  |  1992-05-26  |  2KB  |  95 lines

  1.  
  2. REM $option y+
  3. CALL diskfont.MSB:CALL graphics.MSB
  4. DECLARE FUNCTION OpenDiskFont& LIBRARY
  5. SCREEN 1,640,256,3,2
  6. WINDOW 2,,,,1
  7.  
  8. COLOR 3,0
  9. a$="  This is Sapphire.Font"
  10. Font "sapphire.font",19,0,0
  11. j=1
  12. start:
  13. LOCATE 3,1
  14. FOR x=1 TO 359
  15. PRINT PTAB(x);a$;
  16. NEXT x
  17. COLOR 2,0
  18. PRINT PTAB(360);a$;
  19.  
  20. x=0
  21. again:
  22. SCROLL (350,14)-(620,200),0,1
  23. x=x+1
  24. IF x<=56 THEN GOTO again
  25. LOCATE 6,1
  26. COLOR 3,0
  27. FOR x= 360 TO 1 STEP -1
  28. PRINT PTAB(x);a$;
  29. NEXT x
  30. COLOR 2,0
  31. PRINT PTAB(1);a$;
  32.  
  33. again1:
  34. SCROLL (0,200)-(260,15),0,-1
  35. x=x+1
  36. IF x<=56 THEN GOTO again1
  37. j=j+1
  38. IF j>=2 THEN againfin
  39. COLOR 3,0
  40. GOTO start
  41.  
  42. againfin:
  43. LOCATE 3,1:COLOR 3,0
  44. PRINT PTAB(1);a$;
  45. PRINT :PRINT :PRINT
  46. Font "topaz.font",8,0,0
  47. COLOR 5,0
  48. INPUT " Now we are back to normal (Press <RETURN>",dum$
  49.  
  50. LIBRARY CLOSE
  51. WINDOW CLOSE 2
  52. SCREEN CLOSE 1
  53. END
  54.  
  55. SUB Font(fontName$, height%, style%, prefs%) STATIC
  56.   SHARED pFont&
  57.   IF pFont&<>0 THEN CALL CloseFont(pFont&)
  58.   fontName0$=fontName$+CHR$(0)
  59.   textAttr&(0)=SADD(fontName0$)
  60.   textAttr&(1)=height%*65536& + style%*256 + prefs%
  61.   pFont&=OpenDiskFont&(VARPTR(textAttr&(0)))
  62.   IF pFont& <> 0 THEN SetFont WINDOW(8),pFont&
  63. END SUB
  64.  
  65. SUB diskfont.MSB STATIC
  66. fd$=fd$+"OpenDiskFont" + chr$(0)
  67. fd$=fd$+chr$( 255)+chr$( 226)+chr$( 9)+chr$( 0)
  68. OPEN "RAM:diskfont.bmap" FOR OUTPUT AS 1
  69. PRINT #1,FD$;
  70. CLOSE 1
  71. LIBRARY "RAM:diskfont.library"
  72. END SUB
  73.  
  74.  
  75.  
  76.  
  77.  
  78. SUB graphics.MSB STATIC
  79. fd$=fd$+"AskSoftStyle" + chr$(0)
  80. fd$=fd$+chr$( 255)+chr$( 172)+chr$( 10)+chr$( 0)
  81. fd$=fd$+"SetSoftStyle" + chr$(0)
  82. fd$=fd$+chr$( 255)+chr$( 166)+chr$( 10)+chr$( 1)+chr$( 2)+chr$( 0)
  83. fd$=fd$+"OpenFont" + chr$(0)
  84. fd$=fd$+chr$( 255)+chr$( 184)+chr$( 9)+chr$( 0)
  85. fd$=fd$+"SetFont" + chr$(0)
  86. fd$=fd$+chr$( 255)+chr$( 190)+chr$( 10)+chr$( 9)+chr$( 0)
  87. fd$=fd$+"CloseFont" + chr$(0)
  88. fd$=fd$+chr$( 255)+chr$( 178)+chr$( 10)+chr$( 0)
  89. OPEN "RAM:graphics.bmap" FOR OUTPUT AS 1
  90. PRINT #1,FD$;
  91. CLOSE 1
  92. LIBRARY "RAM:graphics.library"
  93. END SUB
  94.  
  95.